const pageLoadStart = 1765190939698.613; // ms const referrer = document.referrer; // Helper: compute how long since PHP started function msSinceStart() { return performance.timeOrigin + performance.now() - pageLoadStart; } let pageLoadEnd; let pageLoadDiff; // When everything (images, CSS, etc.) finished loading window.addEventListener("load", () => { pageLoadEnd = performance.timeOrigin + performance.now(); pageLoadDiff = msSinceStart().toFixed(4); /* whenPageSettled(() => { });*/ if (!notBDetected) { new BotDetector({ timeout: 1000, callback: function (result) { if (result.isBot) { } else { if (typeof $.cookie == 'function') { $.cookie('nbDet', 1, {expires: 7, path: '/'}); } else { stSetCookie('nbDet', 1, 7) } outboundCheck(); } } }).monitor(); } let outboundCheck = function () { //alert(pageLoadEnd); let formData = { 'sessionId': "nj5n3vr2itp6dvi5iisfi6e2t4", 'pageLoadStart': pageLoadStart, 'pageLoadEnd': pageLoadEnd, 'pageLoadDiff': pageLoadDiff, 'url': window.location.href, 'csId': '69369a51a145e828a30eb903', 'sKey': 'advanced-frontend', 'getS': 'a:3:{s:1:"m";s:2:"64";s:4:"sKey";s:17:"advanced-frontend";s:9:"b64Cookie";s:2492:"eyJPcHRhbm9uQWxlcnRCb3hDbG9zZWQiOiIyMDI1LTEyLTA4VDA5OjI4OjU1Ljk2M1oiLCJPcHRhbm9uQ29uc2VudCI6ImlzR3BjRW5hYmxlZD0wJmRhdGVzdGFtcD1Nb24rRGVjKzA4KzIwMjUrMDQ6NDc6MjErR01ULTA2MDArKENlbnRyYWwrU3RhbmRhcmQrVGltZSkmdmVyc2lvbj0yMDI1MDkuMS4wJmJyb3dzZXJHcGNGbGFnPTAmaXNJQUJHbG9iYWw9ZmFsc2UmaG9zdHM9JmNvbnNlbnRJZD0wOGVhN2ZjZi1lMGI2LTQ3M2EtYTQ0NS01NDRiYTcxMDVlOGUmaW50ZXJhY3Rpb25Db3VudD0xJmlzQW5vblVzZXI9MSZsYW5kaW5nUGF0aD1Ob3RMYW5kaW5nUGFnZSZncm91cHM9QzAwMDE6MSxDMDAwMzoxLEMwMDA0OjEsQzAwMDI6MSZpbnRUeXBlPTEmZ2VvbG9jYXRpb249VVM7Q0EmQXdhaXRpbmdSZWNvbnNlbnQ9ZmFsc2UiLCJQSFBTRVNTSUQiOiIyazJnc2VraGpzNGxkazN2NW83OHJxYmZmdCIsIlY1U0lEX1Byb3BlcnR5Q2hlY2tlcl9jb20iOiJ2Y2V2NnF2NWYyOWViYmU2aHZhdGgzN2kwbCIsIl9jbGNrIjoicTFtdDRqXjJeZzFvXjBeMjE2OCIsIl9jbHNrIjoib2F0eTV2XjE3NjUxOTA4NDI5NjJeMTheMV5uLmNsYXJpdHkubXNcL2NvbGxlY3QiLCJfY3NyZi1mcm9udGVuZCI6IjJkYTA0ZTMwMzRlYTNkYTVjNTg2NThiOGQyMmMzYzU3N2ZlZjkyMGNjMTE3MTA2MDZiNjc4YmUxOWE0NjFmZGJhOjI6e2k6MDtzOjE0OlwiX2NzcmYtZnJvbnRlbmRcIjtpOjE7czozMjpcInlBU2tEZU5EZm5RN2hlV2VYMWdtS1hvdXFOYk5acTVFXCI7fSIsIl9nYSI6IkdBMS4xLjExNDA3MzY5OC4xNzY1MTg2MTI3IiwiX2dhX01UREhDUVJESjUiOiJHUzIuMS5zMTc2NTE4NjEyNiRvMSRnMSR0MTc2NTE5MDg0MSRqNTMkbDAkaDUzMzk4ODk3MSIsIl9nY2xfYXUiOiIxLjEuMjkzNjg2NzI2LjE3NjUxODYxMjcuODE1MDM4MDQwLjE3NjUxODYxNjQuMTc2NTE5MDgzNCIsIl9pZGVudGl0eS1mcm9udGVuZCI6IjM5ZGRmY2U4ODU2Yjc2Y2ZjM2FjMDgyMmVjYTU4ZTlmMjA3ZjAyMmNhMjU1MmQwZjA3OGQ5YWZjMzE0ODU5NzdhOjI6e2k6MDtzOjE4OlwiX2lkZW50aXR5LWZyb250ZW5kXCI7aToxO3M6NDE6XCJbXCI2OTM2OTg2ZWNmOWE4YWM4MWMwNDNkZmRcIixudWxsLDI1OTIwMDBdXCI7fSIsIl9pZGVudGl0eS1mcm9udGVuZC1leHRyYSI6IjU5N2NlNTFjOGRjODBjY2I0NmRhMDUxOWI3ZmM4NmJmNmU1ODUxYThlMTU3ZjI1MDIwMGY1ZWNkNzM0ZjAzMjhhOjI6e2k6MDtzOjI0OlwiX2lkZW50aXR5LWZyb250ZW5kLWV4dHJhXCI7aToxO3M6ODM6XCJbXCI2OTM2OTg2ZWNmOWE4YWM4MWMwNDNkZmRcIixudWxsLFwiMXVwbWF0dEBnbWFpbC5jb21cIixcIk1BVFRIRVcgR1VFUlRJTlwiLGZhbHNlLGZhbHNlXVwiO30iLCJfdWV0c2lkIjoiNGM3Y2EwMTBkNDE4MTFmMDg0Y2E1MTRhNzU1NjU1Y2MiLCJfdWV0dmlkIjoiNGM3Y2I1MTBkNDE4MTFmMDkwOWM1MTViOWQ0NjVjY2EiLCJhZHZhbmNlZC1mcm9udGVuZCI6Im5qNW4zdnIyaXRwNmR2aTVpaXNmaTZlMnQ0IiwiY3NJZCI6IjY5MzY5YTUxYTE0NWU4MjhhMzBlYjkwMyIsImV4dF9sU3RhdGUiOiJNTiIsIm5iRGV0IjoiMSIsInNhbXUiOiI1NTY3MTc2OGU2YjVjYmMxM2IyODVkODgxNzE5ZDAxNjE3OWQ0NTc4YTo1OntpOjA7Tzo3OlwiTW9uZ29JZFwiOjE6e3M6ODpcIm9iamVjdElEXCI7czoyNDpcIjY5MzY5ODZlY2Y5YThhYzgxYzA0M2RmZFwiO31pOjE7czoxNTpcIk1hdHRoZXcgR3VlcnRpblwiO2k6MjtpOjI1OTIwMDA7aTozO2E6MDp7fWk6NDtPOjc6XCJNb25nb0lkXCI6MTp7czo4Olwib2JqZWN0SURcIjtzOjI0OlwiNjkzNjk4NmZiYzU4NjRjN2NkMGQ4YzU0XCI7fX0iLCJzZWFyY2hUeXBlIjoiYWRkcmVzcyIsInRoZW1lVmVyc2lvbiI6IlYyIn0=";}', 'postS': 'a:0:{}', 'cooksS': 'a:22:{s:9:"b64Cookie";s:2492:"eyJPcHRhbm9uQWxlcnRCb3hDbG9zZWQiOiIyMDI1LTEyLTA4VDA5OjI4OjU1Ljk2M1oiLCJPcHRhbm9uQ29uc2VudCI6ImlzR3BjRW5hYmxlZD0wJmRhdGVzdGFtcD1Nb24rRGVjKzA4KzIwMjUrMDQ6NDc6MjErR01ULTA2MDArKENlbnRyYWwrU3RhbmRhcmQrVGltZSkmdmVyc2lvbj0yMDI1MDkuMS4wJmJyb3dzZXJHcGNGbGFnPTAmaXNJQUJHbG9iYWw9ZmFsc2UmaG9zdHM9JmNvbnNlbnRJZD0wOGVhN2ZjZi1lMGI2LTQ3M2EtYTQ0NS01NDRiYTcxMDVlOGUmaW50ZXJhY3Rpb25Db3VudD0xJmlzQW5vblVzZXI9MSZsYW5kaW5nUGF0aD1Ob3RMYW5kaW5nUGFnZSZncm91cHM9QzAwMDE6MSxDMDAwMzoxLEMwMDA0OjEsQzAwMDI6MSZpbnRUeXBlPTEmZ2VvbG9jYXRpb249VVM7Q0EmQXdhaXRpbmdSZWNvbnNlbnQ9ZmFsc2UiLCJQSFBTRVNTSUQiOiIyazJnc2VraGpzNGxkazN2NW83OHJxYmZmdCIsIlY1U0lEX1Byb3BlcnR5Q2hlY2tlcl9jb20iOiJ2Y2V2NnF2NWYyOWViYmU2aHZhdGgzN2kwbCIsIl9jbGNrIjoicTFtdDRqXjJeZzFvXjBeMjE2OCIsIl9jbHNrIjoib2F0eTV2XjE3NjUxOTA4NDI5NjJeMTheMV5uLmNsYXJpdHkubXNcL2NvbGxlY3QiLCJfY3NyZi1mcm9udGVuZCI6IjJkYTA0ZTMwMzRlYTNkYTVjNTg2NThiOGQyMmMzYzU3N2ZlZjkyMGNjMTE3MTA2MDZiNjc4YmUxOWE0NjFmZGJhOjI6e2k6MDtzOjE0OlwiX2NzcmYtZnJvbnRlbmRcIjtpOjE7czozMjpcInlBU2tEZU5EZm5RN2hlV2VYMWdtS1hvdXFOYk5acTVFXCI7fSIsIl9nYSI6IkdBMS4xLjExNDA3MzY5OC4xNzY1MTg2MTI3IiwiX2dhX01UREhDUVJESjUiOiJHUzIuMS5zMTc2NTE4NjEyNiRvMSRnMSR0MTc2NTE5MDg0MSRqNTMkbDAkaDUzMzk4ODk3MSIsIl9nY2xfYXUiOiIxLjEuMjkzNjg2NzI2LjE3NjUxODYxMjcuODE1MDM4MDQwLjE3NjUxODYxNjQuMTc2NTE5MDgzNCIsIl9pZGVudGl0eS1mcm9udGVuZCI6IjM5ZGRmY2U4ODU2Yjc2Y2ZjM2FjMDgyMmVjYTU4ZTlmMjA3ZjAyMmNhMjU1MmQwZjA3OGQ5YWZjMzE0ODU5NzdhOjI6e2k6MDtzOjE4OlwiX2lkZW50aXR5LWZyb250ZW5kXCI7aToxO3M6NDE6XCJbXCI2OTM2OTg2ZWNmOWE4YWM4MWMwNDNkZmRcIixudWxsLDI1OTIwMDBdXCI7fSIsIl9pZGVudGl0eS1mcm9udGVuZC1leHRyYSI6IjU5N2NlNTFjOGRjODBjY2I0NmRhMDUxOWI3ZmM4NmJmNmU1ODUxYThlMTU3ZjI1MDIwMGY1ZWNkNzM0ZjAzMjhhOjI6e2k6MDtzOjI0OlwiX2lkZW50aXR5LWZyb250ZW5kLWV4dHJhXCI7aToxO3M6ODM6XCJbXCI2OTM2OTg2ZWNmOWE4YWM4MWMwNDNkZmRcIixudWxsLFwiMXVwbWF0dEBnbWFpbC5jb21cIixcIk1BVFRIRVcgR1VFUlRJTlwiLGZhbHNlLGZhbHNlXVwiO30iLCJfdWV0c2lkIjoiNGM3Y2EwMTBkNDE4MTFmMDg0Y2E1MTRhNzU1NjU1Y2MiLCJfdWV0dmlkIjoiNGM3Y2I1MTBkNDE4MTFmMDkwOWM1MTViOWQ0NjVjY2EiLCJhZHZhbmNlZC1mcm9udGVuZCI6Im5qNW4zdnIyaXRwNmR2aTVpaXNmaTZlMnQ0IiwiY3NJZCI6IjY5MzY5YTUxYTE0NWU4MjhhMzBlYjkwMyIsImV4dF9sU3RhdGUiOiJNTiIsIm5iRGV0IjoiMSIsInNhbXUiOiI1NTY3MTc2OGU2YjVjYmMxM2IyODVkODgxNzE5ZDAxNjE3OWQ0NTc4YTo1OntpOjA7Tzo3OlwiTW9uZ29JZFwiOjE6e3M6ODpcIm9iamVjdElEXCI7czoyNDpcIjY5MzY5ODZlY2Y5YThhYzgxYzA0M2RmZFwiO31pOjE7czoxNTpcIk1hdHRoZXcgR3VlcnRpblwiO2k6MjtpOjI1OTIwMDA7aTozO2E6MDp7fWk6NDtPOjc6XCJNb25nb0lkXCI6MTp7czo4Olwib2JqZWN0SURcIjtzOjI0OlwiNjkzNjk4NmZiYzU4NjRjN2NkMGQ4YzU0XCI7fX0iLCJzZWFyY2hUeXBlIjoiYWRkcmVzcyIsInRoZW1lVmVyc2lvbiI6IlYyIn0=";s:21:"OptanonAlertBoxClosed";s:24:"2025-12-08T09:28:55.963Z";s:14:"OptanonConsent";s:340:"isGpcEnabled=0&datestamp=Mon+Dec+08+2025+04:47:21+GMT-0600+(Central+Standard+Time)&version=202509.1.0&browserGpcFlag=0&isIABGlobal=false&hosts=&consentId=08ea7fcf-e0b6-473a-a445-544ba7105e8e&interactionCount=1&isAnonUser=1&landingPath=NotLandingPage&groups=C0001:1,C0003:1,C0004:1,C0002:1&intType=1&geolocation=US;CA&AwaitingReconsent=false";s:9:"PHPSESSID";s:26:"2k2gsekhjs4ldk3v5o78rqbfft";s:25:"V5SID_PropertyChecker_com";s:26:"vcev6qv5f29ebbe6hvath37i0l";s:5:"_clck";s:19:"q1mt4j^2^g1o^0^2168";s:5:"_clsk";s:46:"oaty5v^1765190842962^18^1^n.clarity.ms/collect";s:14:"_csrf-frontend";s:140:"2da04e3034ea3da5c58658b8d22c3c577fef920cc11710606b678be19a461fdba:2:{i:0;s:14:"_csrf-frontend";i:1;s:32:"yASkDeNDfnQ7heWeX1gmKXouqNbNZq5E";}";s:3:"_ga";s:26:"GA1.1.114073698.1765186127";s:14:"_ga_MTDHCQRDJ5";s:53:"GS2.1.s1765186126$o1$g1$t1765190841$j53$l0$h533988971";s:7:"_gcl_au";s:56:"1.1.293686726.1765186127.815038040.1765186164.1765190834";s:18:"_identity-frontend";s:153:"39ddfce8856b76cfc3ac0822eca58e9f207f022ca2552d0f078d9afc31485977a:2:{i:0;s:18:"_identity-frontend";i:1;s:41:"["6936986ecf9a8ac81c043dfd",null,2592000]";}";s:24:"_identity-frontend-extra";s:201:"597ce51c8dc80ccb46da0519b7fc86bf6e5851a8e157f250200f5ecd734f0328a:2:{i:0;s:24:"_identity-frontend-extra";i:1;s:83:"["6936986ecf9a8ac81c043dfd",null,"1upmatt@gmail.com","MATTHEW GUERTIN",false,false]";}";s:7:"_uetsid";s:32:"4c7ca010d41811f084ca514a755655cc";s:7:"_uetvid";s:32:"4c7cb510d41811f0909c515b9d465cca";s:17:"advanced-frontend";s:26:"nj5n3vr2itp6dvi5iisfi6e2t4";s:4:"csId";s:24:"69369a51a145e828a30eb903";s:10:"ext_lState";s:2:"MN";s:5:"nbDet";s:1:"1";s:4:"samu";s:235:"55671768e6b5cbc13b285d881719d016179d4578a:5:{i:0;O:7:"MongoId":1:{s:8:"objectID";s:24:"6936986ecf9a8ac81c043dfd";}i:1;s:15:"Matthew Guertin";i:2;i:2592000;i:3;a:0:{}i:4;O:7:"MongoId":1:{s:8:"objectID";s:24:"6936986fbc5864c7cd0d8c54";}}";s:10:"searchType";s:7:"address";s:12:"themeVersion";s:2:"V2";}', 'referrer': referrer }; //alert (window.location.href + '//'); if (!window.storyCalled) { $.ajax({ url: 'https://members.propertychecker.com/story-time', dataType: 'json', async: true, cache: false, method: 'post', data: formData, success: function (data) { if (data.csId && !stGetCookie('csId')) { stSetCookie('csId', data.csId, 7); } } }); } window.storyCalled = true; } if (notBDetected) { outboundCheck(); } }); function stGetCookie(cname) { let name = cname + "="; let decodedCookie = decodeURIComponent(document.cookie); let ca = decodedCookie.split(';'); for (let i = 0; i < ca.length; i++) { let c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return ""; } function stSetCookie(cname, cvalue, exdays) { const d = new Date(); d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); let expires = "expires=" + d.toUTCString(); document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; } function whenPageSettled(callback, settleTime = 1000) { let lastChange = Date.now(); const observer = new MutationObserver(() => (lastChange = Date.now())); observer.observe(document.body, {childList: true, subtree: true, attributes: true}); function check() { if (Date.now() - lastChange > settleTime) { observer.disconnect(); callback(); } else { requestAnimationFrame(check); } } check(); } function BotDetector(args) { var self = this; self.isBot = false; self.tests = {}; var selectedTests = args.tests || []; if (selectedTests.length == 0 || selectedTests.indexOf(BotDetector.Tests.SCROLL) != -1) { self.tests[BotDetector.Tests.SCROLL] = function () { var e = function () { self.tests[BotDetector.Tests.SCROLL] = true; self.update() self.unbindEvent(window, BotDetector.Tests.SCROLL, e) self.unbindEvent(document, BotDetector.Tests.SCROLL, e) }; self.bindEvent(window, BotDetector.Tests.SCROLL, e); self.bindEvent(document, BotDetector.Tests.SCROLL, e); }; } if (selectedTests.length == 0 || selectedTests.indexOf(BotDetector.Tests.MOUSE) != -1) { self.tests[BotDetector.Tests.MOUSE] = function () { var e = function () { self.tests[BotDetector.Tests.MOUSE] = true; self.update(); self.unbindEvent(window, BotDetector.Tests.MOUSE, e); } self.bindEvent(window, BotDetector.Tests.MOUSE, e); }; } if (selectedTests.length == 0 || selectedTests.indexOf(BotDetector.Tests.KEYUP) != -1) { self.tests[BotDetector.Tests.KEYUP] = function () { var e = function () { self.tests[BotDetector.Tests.KEYUP] = true; self.update(); self.unbindEvent(window, BotDetector.Tests.KEYUP, e); } self.bindEvent(window, BotDetector.Tests.KEYUP, e); }; } if (selectedTests.length == 0 || selectedTests.indexOf(BotDetector.Tests.SWIPE) != -1) { self.tests[BotDetector.Tests.SWIPE_TOUCHSTART] = function () { var e = function () { self.tests[BotDetector.Tests.SWIPE_TOUCHSTART] = true; self.update(); self.unbindEvent(document, BotDetector.Tests.SWIPE_TOUCHSTART); } self.bindEvent(document, BotDetector.Tests.SWIPE_TOUCHSTART); } } if (selectedTests.length == 0 || selectedTests.indexOf(BotDetector.Tests.DEVICE_MOTION) != -1) { self.tests[BotDetector.Tests.DEVICE_MOTION] = function () { var e = function (event) { if (event.rotationRate.alpha || event.rotationRate.beta || event.rotationRate.gamma) { var userAgent = navigator.userAgent.toLowerCase(); var isAndroid = userAgent.indexOf('android') != -1; var beta = isAndroid ? event.rotationRate.beta : Math.round(event.rotationRate.beta / 10) * 10; var gamma = isAndroid ? event.rotationRate.gamma : Math.round(event.rotationRate.gamma / 10) * 10; if (!self.lastRotationData) { self.lastRotationData = { beta: beta, gamma: gamma }; } else { var movement = beta != self.lastRotationData.beta || gamma != self.lastRotationData.gamma; if (isAndroid) { movement = movement && (beta > 0.2 || gamma > 0.2); } var args = {beta: beta, gamma: gamma} self.tests[BotDetector.Tests.DEVICE_MOTION] = movement; self.update(); if (movement) { self.unbindEvent(window, BotDetector.Tests.DEVICE_MOTION, e); } } } else { self.tests[BotDetector.Tests.DEVICE_MOTION] = false; } } self.bindEvent(window, BotDetector.Tests.DEVICE_MOTION, e); } } if (selectedTests.length == 0 || selectedTests.indexOf(BotDetector.Tests.DEVICE_ORIENTATION) != -1) { self.tests[BotDetector.Tests.DEVICE_ORIENTATION] = function () { var e = function () { self.tests[BotDetector.Tests.DEVICE_ORIENTATION] = true; self.update(); self.unbindEvent(window, BotDetector.Tests.DEVICE_ORIENTATION, e); } self.bindEvent(window, BotDetector.Tests.DEVICE_ORIENTATION); } } if (selectedTests.length == 0 || selectedTests.indexOf(BotDetector.Tests.DEVICE_ORIENTATION_MOZ) != -1) { self.tests[BotDetector.Tests.DEVICE_ORIENTATION_MOZ] = function () { var e = function () { self.tests[BotDetector.Tests.DEVICE_ORIENTATION_MOZ] = true; self.update(); self.unbindEvent(window, BotDetector.Tests.DEVICE_ORIENTATION_MOZ); } self.bindEvent(window, BotDetector.Tests.DEVICE_ORIENTATION_MOZ); } } self.cases = {}; self.timeout = args.timeout || 1000; self.callback = args.callback || null; self.detected = false; } BotDetector.Tests = { KEYUP: 'keyup', MOUSE: 'mousemove', SWIPE: 'swipe', SWIPE_TOUCHSTART: 'touchstart', SWIPE_TOUCHMOVE: 'touchmove', SWIPE_TOUCHEND: 'touchend', SCROLL: 'scroll', GESTURE: 'gesture', GYROSCOPE: 'gyroscope', DEVICE_MOTION: 'devicemotion', DEVICE_ORIENTATION: 'deviceorientation', DEVICE_ORIENTATION_MOZ: 'MozOrientation' }; BotDetector.prototype.update = function (notify) { var self = this; var count = 0; var tests = 0; for (var i in self.tests) { if (self.tests.hasOwnProperty(i)) { self.cases[i] = self.tests[i] === true; if (self.cases[i] === true) { count++; } } tests++; } self.isBot = count == 0; self.allMatched = count == tests; if (notify !== false) { self.callback(self); } } BotDetector.prototype.bindEvent = function (e, type, handler) { if (e.addEventListener) { e.addEventListener(type, handler, false); } else if (e.attachEvent) { e.attachEvent("on" + type, handler); } }; BotDetector.prototype.unbindEvent = function (e, type, handle) { if (e.removeEventListener) { e.removeEventListener(type, handle, false); } else { var evtName = "on" + type; if (e.detachEvent) { if (typeof e[evtName] === 'undefined') { e[type] = null } e.detachEvent(evtName) } } }; BotDetector.prototype.monitor = function () { var self = this; for (var i in this.tests) { if (this.tests.hasOwnProperty(i)) { this.tests[i].call(); } } this.update(false); setTimeout(function () { self.update(true); }, self.timeout); }; let notBDetected = typeof $.cookie == 'function' ? $.cookie('nbDet') : stGetCookie('nbDet');